const handler = require('./handler')
const schema = require('./schema')
const expressJoi = require('@escook/express-joi')
const router = require('express').Router()
//当前项目，推荐使用 multer 来解析 multipart/form-data 格式的表单数据。https://www.npmjs.com/package/multer
const multer = require('multer')

// 创建 multer 的实例对象，通过 dest 属性指定文件的存放路径
const upload = multer({ dest: 'static/img' })

//添加文章
// upload.single() 是一个局部生效的中间件，用来解析 FormData 格式的表单数据
// 将文件类型的数据，解析并挂载到 req.file 属性中
// 将文本类型的数据，解析并挂载到 req.body 属性中
router.post(
  '/article/add',
  upload.single('cover_img'),
  expressJoi(schema.title_cate_id_content_state),
  handler.addArticle
)

//根据分类和状态获取文章列表
router.get('/article/list', expressJoi(schema.getAtrList), handler.getAtrList)

//删除文章
router.get('/article/delete/:id',expressJoi(schema.id),handler.delArticle)

//根据 Id 获取文章详情
router.get('/article/:id',expressJoi(schema.id),handler.getArtInfo)

//根据 Id 更新文章信息
router.post('/article/edit',expressJoi(schema.editArt),handler.updateArtInfo)

module.exports = router
